History v1.0.0: 3 October 1994: Initial Release. Cool. v1.0.1: 15 October 1994: Started to address the problems OTPS has with DAs. Their icons now display when opt-tabbing, but you still can't opt-tab out of a DA. I'm working on this, but I don't have much time to address it right now. v1.5.0: 5 January 1995: Improved the code so that it now works with DAs properly! I also produced a Power PC version. v1.5.1: 7 January 1995: Fixed a problem that caused periodic crashes when one of the serial ports was in use (for you programmers, I was allocating memory at interrupt time -- BAD). v1.5.2: 17 January 1995: First another memory problem plus made the key sequence customizable. Changed the name from "Option Tab Program Switcher" to "Program Switcher" to reflect this. v2.0.0: 1 February 1995: Turned Program Switcher in a CDEV and added application hiding option. Added "remember last application" to code. Optimized code. Added a preference file. v2.0.1: 7 February 1995: Fixed a nasty bug that caused alot of people to be unable to soft shutdown their computer. I sincerely apologize for turning the public at large into a group of beta-testers. Also fixed a code logic error which sometimes allowed the current front proccess to be displayed first when iniating the switching mechanism. One bug still exists, though. This is the fault of my compiler (CodeWarrior). Basically, a 65K memory block gets allocated in the system heap each time you open the control panel. This block never gets disposed. Therefore, do not open the control panel too often. I have reported this problem to MetroWerks and as soon as a fix is released, I will recompile and release an improved version. v2.0.2: 10 February 1995: Well, the "extra memory block" problem was not a "bug" in the true sense of the word. MW pointed out to me how to dispose of it and this version now get's rid of all memory blocks it does not need. v2.1.0: 27 Fenruary 1995: I tweeked the switching code a little. The current application will not be displayed until all the other applications have been cycled through at least once. I also added the options to set the display window font. Lessened the memory requirements of the control panel. Fixed a problem with the inability to shutdown. v2.1.1: 1 March 1995: I got promoted to First Lieutenant today. I also tweeked the switching code a little more so it wouldn't show the same application twice in a row (as was the case with only 2 running applications). v2.1.2: 31 August 1995: Updated my e-mail address. No changes to the control panel otherwise. v2.1.3: 2 September 1995: Ooops! There was one internal change to v2.1.2 that I screwed up -- Program Switcher would not load. All is well now. v2.1.4: 3 September 1995: Well, mark it down in the lessons learned book. All I was trying to do was update the e-mail address in v2.1.1 and recompile with a newwer version of CodeWarrior. Versions 2.1.2 and 2.1.3 were abortive attempts at doing this. Assuming my task at hand was trivial, I did not ensure that either version was fully functional before releasing them. Well, I put some time in this one and I have verified that it works at least as well as v2.1.1, and it has the updated e-mail address. v2.1.5: 13 September 1995: Added the Kagi Shareware Register program to the archive. This allows credit card registrations. v3.0.0: 5 October 1995: Added a whole multitude of features, including the ability to exclude certain applications, a “reversing” key, more options for the display window, and a “fat” init. This version was also a complete rewrite of the code for Program Switcher. It’s “hackish” roots are gone and it is now a fully polished product. v3.0.1: 6 October 1995: Added an option in the Set Applications… dialog to allow adding any running process to the applications to be excluded list. This is useful for adding the Finder and INIT based processes, such as QuickKeys, or even applications you are just to lazy to find on disk. Also fixed a memory leak and a bug which caused problems with applications that made improper assumtions about what the current front window is. v3.0.2: 21 October 1995: Fixed a minor bug in the Set Display Window Attributes… in which the font size menu wasn’t updating properly. Also added the backslash key in the swicthing key menu for all you lefties out there. v3.1.0: 5 November 1995: Added three new features: 1. Ability to turn off the display of the applications’ icons (perfect for PowerBook users), 2. A method to cancel out of a switch, and 3. a hack that finally defeats Microsoft Excel’s greed for the keyboard -- that is, Program Switcher now works with Microsoft Excel. v3.2.0: 30 November 1995: Added Balloon Help and an application icon cache. v3.2.1: 1 December 1995: Fixed a cosmetic bug that prevented people from seeing the icon cache size. v3.3.0: 14 January 1996: Added several features: "Hide Always," the hide others toggle with the space bar, and the quit application key stroke. v3.4.0: 27 March 1996: Added the feature which takes you directly to an application that has a notification pending. v4.0.0: 23 July 1996: New version with a few new features and bug fixes: • Added two new types of switching methods, bothed based on the switching method of the newest version of that other operating system. • Fixed a bug with the 'Q' key quit featuire not working as expected on some non-US keyboard layouts. • Made the drawing to the switching window as flicker-free as possible. • Fixed a bug which caused garbage to be displayed in the switching window if the "Exclude Applications" option caused no usable applications to be displayed. • Improved the look of some dialogs. • Added "Document Window" to the types of windows that may be used for the switching display window. v4.0.1: 10 August 1996: Fixed a few bugs: • Program Switcher now properly detects the 'Q' key on French keyboards. • Removed a bug which sometimes caused the application name in the switching window to be displayed only in the system font. • Removed a registration bug. v4.1.0: 29 September 1996: Added some new features: • Two new window switching themes: large and small icons in a vertical list. • An option to use the system hilite color to hilite the currently selected application in the switching window. • Auto-key feature which allows you to hold down the switching key and Program Switcher will automatically advance you through the program list. • Arrow keys can now be used to navigate the program list. • A"Try Out" option to preview what changes to the switching window appearance will look like. • A bug was fixed that cause Program Switcher to crash at startup under 24 bit memory addressing on a 680x0 Mac. This bug was actually due to bad code produced by the CW 9 compiler (that is, it wasn't my bug). CW 10 fixed this problem.